from tkinter import *
from tkinter.messagebox import showinfo
import os
import shutil
class deltemp():
    t = 0
    dx = os.path.getsize("C:\\Windows\\Temp")/1024+os.path.getsize("C:\\Users\\"+os.getlogin()+"\\AppData\\Local\\Temp")/1024
    mytk=Tk()
    def __init__(self):
        pass
    def delrun(self):
        o = deltemp.deldir("C:\\Windows\\Temp")
        h = deltemp.deldir("C:\\Users\\"+os.getlogin()+"\\AppData\\Local\\Temp")
        n = o + h
        showinfo(title = "提示",message = "清理完毕!共清理"+str(n)+"项")
        deltemp.mytk.destroy() #关闭GUI窗口，释放资源
    def deldir(self,temp):
        global t
        if os.path.exists(temp):
            pa = os.listdir(temp)
            print("开始清理……")
            #print(pa)
            y = 0
            r = 0
            t = 0
            paz = []
            for z in range(len(pa)):
                paz.append(pa[len(pa)-z-1])
            for i in paz:
                i = temp + "\\"+i
                if os.path.isfile(i):
                    print("删除文件"+i)
                    try:
                        os.remove(i)
                        print("成功")
                        t = t + 1
                    except:
                        print("失败")
                if os.path.isdir(i):
                    print("删除文件夹"+i)
                    try:
                        shutil.rmtree(i)
                        print("成功")
                        t = t + 1
                    except:
                        print("失败")
        else:
            print("错误！未识别到目录")
        return t
    def main(self):
        deltemp.mytk.title("缓清0.8")
        deltemp.mytk.geometry("600x200+600+0")#参数分别代表，长，宽，x y坐标
        ts=Label(deltemp.mytk,text="""应用缓存清理器V0.8
经济是是是开发
原理：Windows在运行时会产生应用缓存，但在应用结束后缓存不会自动清理，因此需要用户自行清理
本应用会自动扫描无用缓存并清理，在此期间你可以继续使用你的电脑，不会受到影响
按按钮开始清理，已识别到"""+str(deltemp.dx)+"KB缓存")
        ts.grid()
        qd=Button(deltemp.mytk,text="启动缓清",bd=1,width=10,command = deltemp.delrun)
        qd.grid()
        deltemp.mytk.mainloop()#运行起来
if __name__ == "__main__":
    deltemp = deltemp()
    deltemp.main()
